#!/usr/bin/env python3
# -*- coding: utf-8 -*-
__author__ = '汤小洋'

'''
数值运算
'''
print(abs(-25))  # 绝对值
# print(abs("hello"))  # 如果参数不对，会报TypeError错误
print(sum([2, 5, 3]))  # 对集合中的元素进行求和
print(pow(2, 5))  # 次方，等同于2**5
print(pow(8, 0.5))  # 8的0.5次方，表示开根号 √￣
print(round(5.6))  # 四舍五入
print(round(3.1415926, 3))  # 保留三位小数
print(max(12, 5, 34, -8, 87))  # 最大值
print(max([12, 5, 34, -8, 87]))  # 也可以传入一个序列
print(min(12, 5, 34, -8, 87))  # 最小值
print(divmod(5, 3))  # 返回整数商和余数
print("-" * 60)

'''
类型转换
'''
print(int("123"))
print(float("12.34"))
print(str(123))
print(bool(1))

'''
类型判断
'''
print(type(666))
print(isinstance("abc", str))  # 判断数据类型
print(isinstance(25.4, int) or isinstance(25.4, float))
print(isinstance(25.4, (int, float)))  # 判断类型为int或float
print("-" * 60)

'''
字符串处理
'''
print(len('hello'), len([12, 4, 29, 6]))  # 返回字符串长度 或 集合中元素个数
print(ord('a'))  # 返回字符对应的Unicode编码（Python使用Unicode编码表示字符）
print(chr(98))  # 返回Unicode编码对应的字符
print(bin(5))  # 返回整数对应的二进制表示形式，0b表示二进制数，是二进制的引导符号
print(oct(5))  # 返回整数对应的八进制表示形式，0o表示八进制数
print(hex(5))  # 返回整对应数的十六进制表示形式，0x表示十六进制

'''
集合操作
'''
print(list((3, 6, 34, 8)))  # 将其他类型转换为list
print(tuple([3, 6, 34, 8]))  # 将list转换为tuple
print(set([12, 3, 23, 3, 6]))  # 将list转换为set，也可创建空set集合
print(dict(a='aaa', b='bbb', c='ccc'))  # 创建dict集合

'''
其他函数
'''
print(eval('3+4'))  # 执行字符串表达式，并返回结果
help(abs)  # 查看函数的帮助信息
